With the wide-spread availability of computers, individuals such as graphics artists and animators more frequently relying upon computers to assist in production processes for creating computer-generated imagery (CGI) and computer-aided animation. This may include using computers to represent physical models of objects with virtual models of the object stored in computer memory.
In CGI and computer-aided animation, one of the first steps in a production process is typically the object modeling process. A user of a computer system may sculpt models of objects much like real clay or plaster, working from general forms to specific details, for example, with various sculpting tools provided by one or more software programs. Models may further be constructed from information obtained about physical object, for example, out of geometrical vertices, faces, and edges in a two-dimensional (2D) or three-dimensional (3D) coordinate system to represent the physical objects. In one instance, a user (e.g., a skilled computer graphics artist) may specify the mathematical description of various objects, such as the geometry and/or topology of characters, props, backgrounds, scenes, or the like. In another instance, a user (e.g., an articulator or rigger) may specify a number of model components or animation control variables (avars) that may be used to position all or part of a model or otherwise manipulate aspects of the model.
In yet another instance, a user (e.g., a skilled graphics artist or skilled animator) may manipulate or otherwise pose the virtual models to be used in an image or animation sequence. For example, an animator may specifying motions and positions of all or part of a model at various points in time to create an animation sequence. Accordingly, these virtual models can then be modified or manipulated using computers as characters or other elements of a computer animation display, for example, to simulate physical motion, design aesthetic actions such as poses or other deformations, create lighting effects, coloring and paint, or the like.
As such, various stages of the production of CGI and computer-aided animation may involve the extensive use of general purposes computer, specialized hardware, and software tools incorporating various computer graphics techniques to produce a visually appealing image from the geometric or mathematical description of an object to convey an essential element of a story or otherwise provide a desired special effect. One of the challenges in creating these visually appealing images can be the balancing of a desire for a highly-detailed image of a character or other object with the practical issues involved in allocating the resources (both human and computational) required to produce those visually appealing images.
In certain areas of the production of CGI and computer-aided animation, the development of models can involve the use of principal component analysis (PCA). PCA is a mathematical procedure that uses an orthogonal transformation to convert a set of observations of possibly correlated variables into a set of values of uncorrelated variables called principal components. Linear PCA models have been used successfully in the fields of Computer Vision and Computer Graphics for a wide range of tasks. In some cases, linear models have been replaced by more sophisticated ones that provide better performance at the expense of increased computational complexity [17]. However, linear models continue to be of common use because of their simplicity and inexpensive computational nature.
Accordingly, what is desired is to solve one or more of the problems relating to creating interactive linear models for use in CGI and computer-aided animation, some of which may be discussed herein. Additionally, what is desired is to reduce some of the drawbacks relating to using interactive region-based linear 3D face models in CGI and computer-aided animation, some of which may be discussed herein.